﻿namespace Dissemination.MVC.Models
{
    using System.ComponentModel;
    using System.ComponentModel.DataAnnotations;
    using System.Web.Mvc;
    using Dissemination.MVC.Helpers;

    [MetadataType(typeof(ReporterMetaData))]
    public partial class Reporter
    {
        [Bind(Exclude = "ReporterID")]
        public class ReporterMetaData
        {
            [DisplayName("Gender")]
            public Gender Gender { get; set; }

            [Required(ErrorMessage = "The reporter e-mail is required")]
            [StringLength(256)]
            [DisplayName("Email")]
            [EmailAttribute(ErrorMessage="The e-mail format is incorrect")]
            public string ReporterEmail { get; set; }

            [StringLength(256)]
            [DisplayName("Name")]
            [Required(ErrorMessage = "The reporter name is required")]
            public string ReporterName { get; set; }

            [StringLength(256)]
            [DisplayName("Surname")]
            [Required(ErrorMessage = "The reporter surname is required")]
            public string ReporterSurname { get; set; }

            [DisplayName("Age")]
            public int ReporterAge { get; set; }

            [DisplayName("Years of experience")]
            public int ReporterYearsOfExperience { get; set; }

            [StringLength(256)]
            [DisplayName("Department")]
            public string ReporterDepartment { get; set; }

            [StringLength(256)]
            [DisplayName("Position")]
            public string ReporterPosition { get; set; }

            [DisplayName("Devoted time")]
            public int ReporterDevotedTime { get; set; }

        }
    }
}
